#include "UP_test.h"
#include "UP_config.h"
#include "UP_USART.h"
#include "UP_EXTI.h"
#include "bsp_dac_audio.h"
#include "audio_source.h"
#include "gd32f4xx.h"
#include "systick.h"
#include "string.h"

void DAC_test(void)
{
    nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2); // 优先级分组

    systick_config(); // 滴答定时器初始化

    USART_init(
        USART0,         // USART USARTx(x=0,1,2,5) / UARTx(x=3,4,6,7)
        115200U,        // 波特率
        USART_WL_8BIT,  // 数据位
        USART_STB_1BIT, // 停止位
        USART_PM_NONE   // 校验位
    );
    
    EXTI_init(PB15);

    dac_audio_init();

    while (1) {
        /* 音频 */
        if (audio_status == 1) // 开启音乐
        {
            audio_status = 3;
            start_play_audio(audioSouce_Background, sizeof(audioSouce_Background), 1); // 播放音乐 单次播放
        } else if (audio_status == 2)                                                  // 状态关闭
        {
            audio_status = 0;
            stop_play_audio();
        }
    }
}

